package com.xunk.system.mapper;

import com.xunk.system.domain.*;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 社区物业Mapper接口
 * 
 * @author ruoyi
 * @date 2021-03-18
 */
public interface SysTenementMapper 
{
    /**
     * 查询社区物业
     * 
     * @param id 社区物业ID
     * @return 社区物业
     */
    public SysTenement selectSysTenementById(Long id);

    /**
     * 查询社区物业列表
     * 
     * @param sysTenement 社区物业
     * @return 社区物业集合
     */
    public List<SysTenementDetail> selectSysTenementList(SysTenementDetail sysTenement);

    /**
     * 新增社区物业
     * 
     * @param sysTenement 社区物业
     * @return 结果
     */
    public int insertSysTenement(SysTenement sysTenement);

    /**
     * 修改社区物业
     * 
     * @param sysTenement 社区物业
     * @return 结果
     */
    public int updateSysTenement(SysTenement sysTenement);

    /**
     * 删除社区物业
     * 
     * @param id 社区物业ID
     * @return 结果
     */
    public int deleteSysTenementById(Long id);

    /**
     * 批量删除社区物业
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteSysTenementByIds(Long[] ids);

    /**
     *  查询用户手机号
     * @param homeId 用户id
     * @return 手机号
     */
    String selectPhoneNum(Long homeId);

    /**
     *  查询社区信息
     * @param homeId  部门id
     * @return  社区信息
     */
    SysTenementModel selectTenementInfo(Long homeId);

    /**
     *  报事报修到物业
     * @param matterLog 报事报修详情
     */
    void insertMatterLog(SysMatterLog matterLog);

    List<SysMatterLog> selectMatterLog(SysMatterLog matterLog);

    /**
     *  根据deptId查询其对应的物业是否已经存在
     * @param deptId 部门id
     * @return
     */
    Long selectTeneByDeptId(@Param("deptId") Long deptId);

    void deleteMatterLog(Long[] ids);

    void insertDistinct(SysDistrict distinct);

    String selectDistinctCodeById(Long deptId);

    String getDistrictCode(SysTenement sysTenement);
}
